7bd90d545bc9fcfc833b68fbd7a62b97ee21d00f,plugins/groovy/src/org/jetbrains/plugins/groovy/lang/parser/parsing/statements/typeDefinitions/blocks/AnnotationBlock.java,AnnotationBlock,parse,#PsiBuilder#,31

Before Change



    AnnotationMember.parse(builder);

    while (Separators.parse(builder)) {
      AnnotationMember.parse(builder);
    }

    if (builder.getTokenType() != mRCURLY) {
      builder.error(GroovyBundle.message("rcurly.expected"));
    }

    while (!builder.eof() && !ParserUtils.getToken(builder, mRCURLY)) {
      AnnotationMember.parse(builder);

      builder.advanceLexer();
    }

    abMarker.done(CLASS_BODY);

After Change


 * @date: 18.03.2007
 */
public class AnnotationBlock implements GroovyElementTypes {
  public static IElementType parse(PsiBuilder builder) {
    //see also InterfaceBlock, EnumBlock, AnnotationBlock
    PsiBuilder.Marker abMarker = builder.mark();

    if (!ParserUtils.getToken(builder, mLCURLY)) {
      builder.error(GroovyBundle.message("lcurly.expected"));
      abMarker.rollbackTo();
      return WRONGWAY;
    }

    while (AnnotationMember.parse(builder) && Separators.parse(builder));

    ParserUtils.getToken(builder, mRCURLY, GroovyBundle.message("rcurly.expected"));

    abMarker.done(CLASS_BODY);
    return CLASS_BODY;